package com.wie.staffhubpro.service;

import com.wie.staffhubpro.domain.dto.LoginDTO;
import com.wie.staffhubpro.domain.dto.Register1DTO;
import com.wie.staffhubpro.domain.dto.Register2DTO;
import com.wie.staffhubpro.domain.entity.User;
import com.baomidou.mybatisplus.extension.service.IService;
import com.wie.staffhubpro.domain.vo.RegisterVO;
import com.wie.staffhubpro.domain.vo.UserVO;

import javax.security.auth.login.AccountNotFoundException;

/**
* @author WiedersehenM
* @description 针对表【user】的数据库操作Service
* @createDate 2025-06-27 14:55:15
*/
public interface UserService extends IService<User> {

    /**
     * 用户注册阶段一
     */
    RegisterVO registerPre(Register1DTO registerDTO);

    /**
     * 注册第二阶段
     *
     * @return
     */
    Void register(Register2DTO registerDTO);

    /**
     * 用户登录
     */
    User login(LoginDTO loginDTO) throws AccountNotFoundException;

    /**
     * 获取当前用户信息
     */
    UserVO getUserInfo(Integer userId);

}
